﻿using AuSys.Models.Identities;

namespace AuSys.Services.App.UserInfo.Abstractions
{
    public interface IUserInfoService
    {
        public IUserInfo GetUserInfo();
    }
    public interface IUserInfo
    {
        public int Id { get; } 
        public string Name { get; set; } 
        public int LeftHours { get; set; }
        public UserType Type { get; set; }
        public bool IsAdmin { get; }
        public bool NotAdmin { get; }
        public Dictionary<string, string> Claims { get; }
    }
    public interface IBasicUserInfo
    {
        public int Id { get; set; }
        public string? Name { get; set; }
        public UserType Type { get; set; }
    }
    public interface IBasicUserInfoProvider
    {
        public IBasicUserInfo? GetUserInfoBasic(int id);
    }
}
